From: Florian Müllner Date: Fri, 28 Nov 2025 00:43:33 +0000 (+0100) Subject: layout: Resolve immediately after loading the background X-Git-Tag: archive/raspbian/50.5-1+rpi1~1^2~44^2~58 X-Git-Url: https://dgit.raspbian.org/%22http://www.example.com/cgi/%22/%22http:/www.example.com/cgi/%22?a=commitdiff_plain;h=6103618b6ff1a1d56ffefc5fdfd494eed062aa0f;p=gnome-shell.git layout: Resolve immediately after loading the background We currently resolve the promise in a low-priority idle handler after the background was loaded, so that the system can settle down after the initial load before doing the animation. Promises are already resolved on the main loop (albeit with a high priority), so hopefully the explicit idle source isn't necessary anymore. Part-of: --- diff --git a/js/ui/layout.js b/js/ui/layout.js index 4fd23fe32..5a09ea797 100644 --- a/js/ui/layout.js +++ b/js/ui/layout.js @@ -681,18 +681,7 @@ export const LayoutManager = GObject.registerClass({ const {promise, resolve} = Promise.withResolvers(); const signalId = this._systemBackground.connect('loaded', () => { this._systemBackground.disconnect(signalId); - - // We're mostly prepared for the startup animation - // now, but since a lot is going on asynchronously - // during startup, let's defer the startup animation - // until the event loop is uncontended and idle. - // This helps to prevent us from running the animation - // when the system is bogged down - const id = GLib.idle_add(GLib.PRIORITY_LOW, () => { - resolve(); - return GLib.SOURCE_REMOVE; - }); - GLib.Source.set_name_by_id(id, '[gnome-shell] Startup Animation'); + resolve(); }); await promise;